// 提现申请相关类型
export interface WithdrawalType {
  withdrawalId?: number
  shopId?: number
  shopName?: string
  shopCode?: string
  withdrawalType?: number // 提现类型 1-微信 2-支付宝 3-银行卡
  withdrawalAccount?: string // 提现账户
  withdrawalName?: string // 账户姓名
  withdrawalMoney?: number // 提现金额
  state?: number // 状态 0-待处理 1-已通过 2-已拒绝
  reason?: string // 拒绝原因
  createTime?: string
  updateTime?: string
  [key: string]: any
}

// 提现申请查询参数
export interface WithdrawalGetAllParam {
  page: number
  pageSize: number
  shopName?: string
  shopCode?: string
  state?: number
  dates?: string[]
}

// 提现申请详情查询参数
export interface WithdrawalGetByIdParam {
  withdrawalId: number
}

// 提现申请处理参数
export interface WithdrawalHandleParam {
  withdrawalId: number
  state?: number // 1-通过 2-拒绝
  reason?: string // 拒绝原因
}

// 用户提现申请相关类型
export interface BuyerWithdrawalType {
  withdrawalId?: number
  buyerUserId?: number
  withdrawalType?: number // 提现类型 1-微信 2-支付宝
  withdrawalAccount?: string // 提现账户
  withdrawalName?: string // 账户姓名
  withdrawalMoney?: number // 提现金额
  state?: number // 状态 0-待处理 1-已通过 2-已拒绝
  reason?: string // 拒绝原因
  createTime?: string
  updateTime?: string
  [key: string]: any
}

// 用户提现申请查询参数
export interface BuyerWithdrawalGetAllParam {
  page: number
  pageSize: number
  buyerName?: string // 用户姓名
  state?: number
  dates?: string[]
}

// 用户提现申请详情查询和处理参数
export interface BuyerWithdrawalGetByIdParam {
  withdrawalId: number
  state?: number // 1-同意 2-拒绝
}

// 财务管理相关类型
export interface FinanceCount {
  // 统计字段（与后端接口字段名保持一致）
  revenue?: number // 营收总额
  frozen?: number // 冻结金额
  withdrawable?: number // 可提现金额
  haveWithdrawable?: number // 已提现金额
  refund?: number // 已退款金额
  withdrawableStayMoney?: number // 提现中金额

  // 分页数据
  page?: {
    list: any[]
    total: number
    [key: string]: any
  }

  [key: string]: any
}

// 财务管理查询参数
export interface FinanceParam {
  shopName?: string
  shopCode?: string
  page: number
  pageSize: number
}

// 保证金管理相关类型
export interface BondCount {
  total?: number // 保证金总额
  frozenBond?: number // 冻结保证金
  unfrozenBond?: number // 可用保证金
  usedBond?: number // 已使用保证金
  page?: {
    total: number
    list: any[]
  }
  [key: string]: any
}

// 保证金管理查询参数
export interface BondParam {
  buyerName?: string // 用户姓名
  page?: number // 当前页码
  pageSize?: number // 每页条数
}
